System and method for ambient temperature sensing of a pump system

ABSTRACT

A pump system including a motor, a fluid pump powered by the motor, a temperature sensor, and a controller. The controller including a processor and a computer readable memory storing instructions that, when executed by the processor, cause the controller to receive a first temperature value from the temperature sensor, receive a second temperature value from the temperature sensor, calculate a rate of temperature change by comparing the first temperature value and the second temperature value, calculate a heating offset value based on the rate of temperature change, and calculate an ambient temperature based on the second temperature value and the heating offset value.

BACKGROUND

The invention relates to methods for sensing an ambient temperature of a pump system.

SUMMARY

Pump systems often utilize a temperature sensor for sensing an ambient temperature. The temperature sensor may often sense a temperature that is higher than the true ambient temperature due to heat exposure from direct sunlight. The exposure to direct sunlight causes a sunlight load on the temperature sensor. The sunlight load increases the sensed temperature values leading to false temperature readings. In order to limit sunlight load, some pump system manufacturers require the pump system to be located in a shaded area at all times. Other pump system manufacturers use a sensor located on or near the electronics board inside a housing of the pump system. This sensor uses predetermined offsets to account for electronic and motor heating. An alternative is desired.

In one embodiment, the invention provides a pump system comprising a motor; a fluid pump powered by the motor; a temperature sensor; and a controller. The controller including a processor and a computer readable memory storing instructions that, when executed by the processor, cause the controller to receive a first temperature value from the temperature sensor, receive a second temperature value from the temperature sensor, calculate a rate of temperature change by comparing the first temperature value and the second temperature value, calculate a heating offset value based on the rate of temperature change, and calculate an ambient temperature based on the second temperature value and the heating offset value.

In another embodiment the invention provides a method of determining an ambient temperature of a pump system, the pump system including a motor, a fluid pump powered by the motor, and a temperature sensor. The method comprising receiving a first temperature value from the temperature sensor; receiving a second temperature value from the temperature sensor; calculating a rate of temperature change by comparing the first temperature value and the second temperature value; calculating a heating offset value based on the rate of temperature change; and calculating an ambient temperature based on the second temperature value and the heating offset value.

Other aspects of the invention will become apparent by consideration of the detailed description and accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 schematically illustrates a pool or spa system according to one embodiment of the invention.

FIG. 2 illustrates a controller of the pool system of FIG. 1.

FIG. 3 illustrates a perspective view of the controller, a motor, and a user-interface module of the pool system of FIG. 1.

FIGS. 4 a-4 c illustrate an operation of determining a sensed ambient temperature of the pool system of FIG. 1, according to one embodiment of the invention.

DETAILED DESCRIPTION

Before any embodiments of the invention are explained in detail, it is to be understood that the invention is not limited in its application to the details of construction and the arrangement of components set forth in the following description or illustrated in the following drawings. The invention is capable of other constructions and of being practiced or of being carried out in various ways.

FIG. 1 schematically illustrates a pool or spa system 100. The pool system 100 includes a vessel 105, a pump system 110, and a controller 115. In some constructions, the vessel 105 is a hollow container such as a tub, pool, or vat that holds a fluid. In some constructions, the fluid is chlorinated water.

The pump system 110 includes a motor 120, a fluid pump 125, and a fluid agitator 130. In one construction, the motor 120 is a brushless direct-current (BLDC) motor. As is commonly known, BLDC motors include a stator, a permanent magnet rotor, and an electronic commutator. The electronic commutator typically includes, among other things, a programmable device (e.g., a microcontroller, a digital signal processor, or a similar controller) having a processor and memory. The programmable device of the BLDC motor uses software stored in the memory to control the electronic commutator. The electric commutator then provides the appropriate electrical energy to the stator in order to rotate the permanent magnet rotor at a desired speed. In other constructions, the motor 120 can be a variety of other types of motors, including but not limited to, a brush direct-current motor, a stepper motor, a synchronous motor, an induction motor, a vector-driven motor, a switched reluctance motor, and other DC or AC motors. In some constructions, the motor 120 is a variable speed motor. In other constructions, the motor 120 can be a multi-speed motor or a single speed motor.

The motor 120 is coupled to the fluid pump 125 by a shaft or similar connector. The fluid agitator 130 is contained within the fluid pump 125. In some constructions, the fluid agitator 130 is a rotor, such as an impeller or a fan. In operation, the motor 120 rotates the fluid agitator 130 located within the fluid pump 125. As the fluid agitator 130 is rotated, the fluid agitator 130 controllably moves the fluid contained by the vessel 105 through the pool system 100. Other pump systems having other fluid agitators may be used without departing from the spirit of the invention.

FIG. 2 illustrates the controller 115 of the pool system 100. The controller 115 is electrically and/or communicatively connected to a variety of modules or components of the pool system 100. For example, the controller 115 is connected to the motor 120. The controller 115 includes combinations of hardware and software that are operable to, among other things, control the operation of the pool system 100.

In some constructions, the controller 115 is the same controller already contained within the motor 120, therefore having one controller that both directly controls the speed of the motor 120 and the operation of the pool system 100. In other constructions, the controller 115 is a separate controller from the controller contained within the motor 120 and controls the operation of the pool system 100 while controlling the controller contained within the motor 120, therefore having two separate controllers. An exemplary controller 115 and motor 120 combination is described in U.S. patent application Ser. No. 13/285,624, filed on Oct. 31, 2011, the entire content of which is incorporated herein by reference.

In some constructions, the controller 115 includes a plurality of electrical and electronic components that provide power, operational control, and protection to the components and modules within the controller 115 and pool system 100. For example, the controller 115 includes, among other things, a processor 150 (e.g., a microprocessor, a microcontroller, or another suitable programmable device) and a memory 155. In some constructions, the controller 115 is implemented partially or entirely on a semiconductor (e.g., a field-programmable gate array [“FPGA”] semiconductor) chip.

The memory 155 includes, for example, a program storage and a data storage. The program storage and the data storage can include combinations of different types of memory, such as read-only memory (“ROM”), random access memory (“RAM”) (e.g., dynamic RAM [“DRAM”], synchronous DRAM [“SDRAM”], etc.), electrically erasable programmable read-only memory (“EEPROM”), flash memory, a hard disk, an SD card, or other suitable magnetic, optical, physical, or electronic memory devices. The processor unit 150 is connected to the memory 155 and executes software instructions that are capable of being stored in a RAM of the memory 155 (e.g., during execution), a ROM of the memory 155 (e.g., on a generally permanent basis), or another non-transitory computer readable medium such as another memory or a disc. Software included in the implementation of the pool system 100 can be stored in the memory 155 of the controller 115. The software includes, for example, firmware, one or more applications, program data, filters, rules, one or more program modules, and other executable instructions. The controller 115 is configured to retrieve from memory and execute, among other things, instructions related to the control processes and methods described herein. In other constructions, the controller 115 includes additional, fewer, or different components.

The controller 115 receives power from a power supply module 160. The power supply module 160 supplies a nominal AC or DC voltage to the controller 115 or other components or modules of the pool system 100. The power supply module 160 is powered by, for example, a power source having nominal line voltages between 110V and 240V AC and frequencies of approximately 5-060 Hz. The power supply module 160 is also configured to supply lower voltages to operate circuits and components within the controller 115 or pool system 100. In other constructions, the controller 115 or other components and modules within the pool system 100 are powered by one or more batteries or battery packs, or another grid-independent power source (e.g., a generator, a solar panel, etc.).

The controller 115 is controlled and monitored by a user-interface module 165. For example, the user-interface module 165 is operably coupled to the controller 115 to control the operating speed of the motor 120, the duration of operation of the motor 120, etc. The user-interface module 165 includes a combination of digital and analog input or output devices required to achieve a desired level of control and monitoring for the pool system 100. For example, the user-interface module 165 includes a display (e.g., a primary display, a secondary display, etc.) and input devices such as touch-screen displays, a plurality of knobs, dials, switches, buttons, etc. The display is, for example, a liquid crystal display (“LCD”), a light-emitting diode (“LED”) display, an organic LED (“OLED”) display, an electroluminescent display (“ELD”), a surface-conduction electron-emitter display (“SED”), a field emission display (“FED”), a thin-film transistor (“TFT”) LCD, etc. The user-interface module 165 can also be configured to display conditions or data associated with the pool system 100 in real-time or substantially real-time. In some implementations, the user-interface module 165 is controlled in conjunction with the one or more indicators (e.g., LEDs, speakers, etc.) to provide visual or auditory indications of the status or conditions of the pool system 100. In some constructions, the user-interface module 165 is integrated into the same housing as the controller 115, or part of a control board of the controller 115.

The controller 115 is further in electrical communication with a temperature sensor 170. The temperature sensor 170 can be a digital temperature sensor or an analog temperature sensor. In some constructions, the temperature sensor 170 is a resistive temperature device (e.g., negative temperature coefficient [“NFC”], positive temperature coefficient [“PTC”], etc.). In other constructions, the temperature sensor 170 can be a variety of other types of temperature sensors, including but not limited to, thermocouples, infrared sensors, bimetallic devices, thermometers, and change-of-state sensors. In some constructions, the temperature sensor 170 is incorporated into the user-interface module 165. In other constructions, the temperature sensor 170 is located on a housing of the pump system 110.

FIG. 3 illustrates a perspective view of one construction of the controller 115, the motor 120, and the user-interface module 165 of the pool system 100.

In operation, the controller 115 receives sensed temperature values from the temperature sensor 170 at a predetermined frequency (e.g., every 1 second, 5 seconds, 10 second, 30 seconds, 1 min, 2 min, 5 min, 10 min, 15 min, 30 min, or a frequency of approximately between 1 second to 30 min). The controller 115 uses the received temperature values to calculate a rate of temperature change (e.g., a rate of temperature rise if the sensed temperature values are increasing, or a rate of temperature fall if the sensed temperature values are decreasing). If the rate of temperature rise is greater than a predetermined value (e.g., an increase of 3° C. during a 15 min time period), the controller 115 determines that the sensed temperature rise is due to sunlight load, rather than an increase in ambient temperature. If the rate of temperature fall is greater than a predetermined value (e.g., a decrease of 1° C. during a 15 min time period), the controller 115 determines that the sensed temperature fall is due to a temporary departure of sunlight load (e.g., temporary cloud cover of the sun), rather than a decrease in ambient temperature. If the temperature change is determined to be due to sunlight load or temporary departure of sunlight load, the controller 115 uses the rate of temperature change to calculate a heating offset. The heating offset, along with the most recent received temperature value, is then used by the controller 115 to calculate an ambient temperature. The controller 115 continually repeats the operation to update the heating offset and the ambient temperature.

In some constructions, the controller 115 uses a heating offset cap. In situations when the ambient temperature is relatively high, the sunlight load can be over accounted for. Therefore, a heating offset cap is used to maintain the heating offset at a reasonable value. The heating offset cap is a predetermined cap value that the heating offset cannot surpass. If the calculated heating offset is greater than the predetermined cap value, then the predetermined cap value, along with the most recent received temperature value, is used to calculate the sensed ambient temperature.

FIGS. 4 a-4 c illustrate an operation or method 200 of determining an ambient temperature. The controller 115 sets the heating offset to zero (Step 205). The controller 115 receives a first temperature value from the temperature sensor 170 (Step 210). The controller 115 waits for a predetermine time period (e.g., 1 min, 2 min, 5 min, 10 min, 15 min, 30 min, or approximately 1 min to 30 min) (Step 215). The controller 115 receives a second temperature value from the temperature sensor 170 (Step 220). The controller 115 calculates a rate of temperature change by subtracting the first temperature value from the second temperature value (Step 225). The controller 115 determines if the rate of temperature change is greater than, or equal to, a predetermined heating rise value (Step 230). If the rate of temperature change is greater than, or equal to, the predetermined heating rise value, the controller 115 adds the rate of temperature change to a heating offset (Step 235). The controller 115 then determines if the heating offset is greater than, or equal to, a heating offset cap (Step 240). If the heating offset is greater than, or equal to, the heating offset cap, the controller 115 subtracts the heating offset cap from the second temperature value to calculate the ambient temperature (Step 245), the method 200 then returns to Step 210. If the heating offset is not greater than, or equal to, the heating offset cap, the controller 115 subtracts the heating offset from the second temperature value to calculate the ambient temperature (Step 250), the method 200 then returns to Step 210.

If the controller determines NO in Step 225, the controller determines if the rate of temperature change is less than a predetermined heating fall value (Step 255). If the rate of temperature change is not less than the predetermined heating fall value, the controller 115 subtracts the heating offset from the second temperature value to calculate the ambient temperature (Step 260), the method 200 then returns to Step 210. If the rate of temperature change is less than the predetermined heating fall value, the controller 115 adds the rate of temperature change to the heating offset (Step 265). The controller 115 determines if the heating offset is a negative number (Step 270). If the heating offset is a negative number the method returns to Step 205. If the heating offset is a positive number, the controller 115 subtracts the heating offset from the second temperature value to calculate the ambient temperature (Step 275), the method 200 then returns to Step 210.

When the pool system 100 operates in colder climates or during colder temperatures, water flowing within the pump system 110 may freeze. Frozen water within the pump system 110 prevents the pump system 110 from operating properly. Furthermore, because freezing water expands, frozen water can cause damage to the pool system 100. One way to prevent water from freezing within the pump system 110 is to operate the motor 120 and force water to move through the pool system 100 instead of remaining stagnant. In some constructions, if the sensed ambient temperature is below a predetermined freeze protection temperature threshold, the controller 115 activates the motor 120 to begin pumping of fluid.

Thus, the invention provides, among other things, a system and method for ambient temperature sensing of a pump system. Various features and advantages of the invention are set forth in the following claims. 

What is claimed is:
 1. A pump system comprising: a motor a fluid pump powered by the motor; a temperature sensor; and a controller including a processor and a computer readable memory storing instructions that, when executed by the processor, cause the controller to receive a first temperature value from the temperature sensor, receive a second temperature value from the temperature sensor, calculate a rate of temperature change by comparing the first temperature value and the second temperature value, calculate a heating offset value based on the rate of temperature change, and calculate an ambient temperature based on the second temperature value and the heating offset value.
 2. The pump system of claim 1, wherein the instructions, when executed by the processor, further cause the controller to receive a third temperature value from the temperature sensor, calculate an updated rate of temperature change by comparing the second temperature value and the third temperature value, calculate an updated heating offset value based on the updated rate of temperature change, and calculate an updated ambient temperature based on the third temperature value and the updated heating offset value.
 3. The pump system of claim 1, wherein there is a predetermined time period between receiving the first temperature value and the second temperature value.
 4. The controller of claim 1, wherein the instructions, when executed by the processor, further cause the controller to determine if the rate of temperature change is above a predetermined upper rate of temperature change threshold and below a predetermined lower rate of temperature change threshold, wherein if the rate of temperature change is above the predetermined rate of temperature change threshold or below the predetermined lower rate of temperature change threshold the controller does not calculate the ambient temperature based on the heating offset value.
 5. The pump system of claim 1, wherein the temperature sensor is located outside a housing of the pump system.
 6. The pump system of claim 1, wherein the instructions, when executed by the processor, further cause the controller to activate the motor to begin pumping of fluid when the ambient temperature is below a freeze protection temperature threshold.
 7. The pump system of claim 1, wherein the instructions, when executed by the processor, further cause the controller to indicate an error condition when the temperature value from the temperature sensor exceeds an overheat temperature threshold.
 8. The pump system of claim 1, further including a user-interface module.
 9. The pump system of claim 8, wherein the temperature sensor is integrated into the user-interface module.
 10. A method of determining an ambient temperature of a pump system, the pump system including a motor, a fluid pump powered by the motor, and a temperature sensor, the method comprising: receiving a first temperature value from the temperature sensor; receiving a second temperature value from the temperature sensor; calculating a rate of temperature change by comparing the first temperature value and the second temperature value; calculating a heating offset value based on the rate of temperature change; and calculating an ambient temperature based on the second temperature value and the heating offset value.
 11. The method of claim 10, further comprising receiving a third temperature value from the temperature sensor, calculating an updated rate of temperature change by comparing the second temperature value and the third temperature value, calculating an updated heating offset value based on the updated rate of temperature change, and calculating an updated ambient temperature based on the third temperature value and the updated heating offset value.
 12. The method of claim 10, wherein there is a predetermined time period between receiving the first temperature value and the second temperature value.
 13. The method of claim 10, further comprising determining if the rate of temperature change is above a predetermined upper rate of temperature change threshold and below a predetermined lower rate of temperature change threshold, wherein if the rate of temperature change is above the predetermined rate of temperature change threshold or below the predetermined lower rate of temperature change threshold not calculating the ambient temperature based on the heating offset value.
 14. The method of claim 10, further comprising activating the motor to begin pumping of fluid when the ambient temperature is below a freeze protection temperature threshold.
 15. A pool system comprising a vessel; and a pump system including a motor, a fluid pump powered by the motor, a temperature sensor, and a controller including a processor and a computer readable memory storing instructions that, when executed by the processor, cause the controller to receive a first temperature value from the temperature sensor, receive a second temperature value from the temperature sensor, calculate a rate of temperature change by comparing the first temperature value and the second temperature value, calculate a heating offset value based on the rate of temperature change, and calculate an ambient temperature based on the second temperature value and the heating offset value.
 16. The controller of claim 15, wherein the instructions, when executed by the processor, further cause the controller to receive a third temperature value from the temperature sensor, calculate an updated rate of temperature change by comparing the second temperature value and the third temperature value, calculate an updated heating offset value based on the updated rate of temperature change, and calculate an updated ambient temperature based on the third temperature value and the updated heating offset value.
 17. The pump system of claim 15, wherein there is a predetermined time period between receiving the first temperature value and the second temperature value.
 18. The controller of claim 15, wherein the instructions, when executed by the processor, further cause the controller to determine if the rate of temperature change is above a predetermined upper rate of temperature change threshold and below a predetermined lower rate of temperature change threshold, wherein if the rate of temperature change is above the predetermined rate of temperature change threshold or below the predetermined lower rate of temperature change threshold the controller does not calculate the ambient temperature based on the heating offset value.
 19. The pump system of claim 15, wherein the temperature sensor is located outside a housing of the pump system.
 20. The pump system of claim 15, wherein the instructions, when executed by the processor, further cause the controller to activate the motor to begin pumping of fluid when the ambient temperature is below a freeze protection temperature threshold.
 21. The pump system of claim 15, wherein the instructions, when executed by the processor, further cause the controller to indicate an error condition when the temperature value from the temperature sensor exceeds an overheat temperature threshold.
 22. The pump system of claim 15, further including a user-interface module.
 23. The pump system of claim 22, wherein the temperature sensor is integrated into the user-interface module. 